線上影音
Home > ANSYS HFSS 教學 > 先進封裝模擬設定
本文始於2023年,以2023R1 HFSS 3D Layout介紹於先進封裝的模擬設定,其適用於如HBM的Interposer。內容涵蓋確保準度的加速模擬方法,與不同頻寬要求前提下的準度最佳模擬手法。
-
2.1 較大背景空間
2.2 較小背景空間
-
3.1 First order+lower solution frequency(1/4 Max. freq.)
3.2 Mixed order+higher solution frequency(1/2 Max. freq.)
- 新功能設定
-
0~10/30GHz準度需求的模擬手法
5.1 設定[Using Q3D to solve DC point] ... not work
5.2 設定[Solve Inside] for Signal Net (only signal nets)
0~70GHz準度需求的模擬手法
6.1 先解0~1MHz並設定[Using Q3D to solve DC point]以取得正確DC RL
6.2 改以手動設定DC thickness for signal layer ... 未來會有更好的手法
問題與討論
8.1 um級的題目,solve inside解的DC RL一定比SIBC (effective DC thickness)解的DC RL大嗎?
8.2 本文範例的銅厚1um,進入AC region的頻點在39GHz以上,為何5.2的模擬結果顯示10GHz以上使用solve inside的S21準度就偏(差)了? ... 課後挑戰題
-
3D IC(先進封裝技術)[1][2]或TSV[3]大約在2010就有人喊了,但一直到了2020年才真的在業界大鳴大放形成一股風潮。
台積3D IC技術平台(3D Fabric)是業界代表,其整合目前的先進封裝技術SoIC、InFO及CoWoS,而這三種都在台積的官網內連接到GUC GLink 2.0 (Die-to-Doe)與GLink 3D (Die-on-Die)新聞稿。
欲一步了解模擬流程上GUC是怎麼做的,其官網內有一篇介紹,與一篇新聞稿。
......不過癮的,可以觀看2022年GUC的專家,在ANSYS年度大會的分享。簡單來說,這類封裝設計的線寬與線距約0.x~3um,導體厚約0.x~1um,走線都是直線與正交(沒有斜線與蛇線),via都是方形柱(不是圓柱),且沒有完整的參考面當迴流路徑。我們就以這樣的條件來示範說明,萃取模型的設定上有那些需要注意的know-how。
下圖是本文示例:線長1000um,線寬線距2um,銅厚1um的設計 (由於走線下方沒有參考地,所以只適合以HFSS解)。
-
2.1 較大背景空間
2.2 較小背景空間
-
求解設定(Solution Setup)
3.1 First order+lower solution frequency(1/4 Max. freq.)
3.2 Mixed order+higher solution frequency(1/2 Max. freq.)
-
新功能設定
- 0~10/30GHz準度需求的模擬手法
雖然air box越小求解越快,若只在意SI(不看EMI),那確實air box也不需要太大。但這些並不表示air box越小越好,特別是在上下垂直方向的空間延伸,必須確保"至少"大於線寬(或bump間距)的一倍,這樣才能正確的考慮線間耦合。
以此例來說,雖然1.2的例子解的較快,但其S21與1.1設定的求解結果明顯不同,哪一個才是較準的呢?
要釐清這問題其實也很簡單,如果1.1不夠準,那是因較大的air box造成默認空間網格接近PCB處的網格質量不佳所致。反之,如果1.2不夠準,那是因較小的air box截掉了Z方向的fringe,低估了線間(或bump間)耦合。
只要把Z方向air box延伸從0.1加大到0.3~0.5,看看S21有沒有變就知道問題在哪裡。所以air box不是越大越安全,也不是越小越好,必須適當。
Converged passes = 2
HFSS 3DL setup內的Model type選[IC]
在極細長的線上,添加以十倍線寬為限制的length-based mesh operation
兩者模擬結果S參數比較:
兩者模擬時間與消耗Max. RAM:
這兩種設定都有人使用。
First order是一個比較保守的設定,但基於Mixed order在這類型題目上所消耗的記憶體與時間都較少,準度也還行,故一般實務(較複雜的)案例採用mixed order收斂兩次,也是一個準度與效率折衷的選擇。
Mixed order速度較快的主因是:到達last adaptive的最大記憶體使用較少,在工作站記憶體有限的狀況下,掃頻階段每一次HPC的求解頻點可較多,所以整個求解時間較快。
4.1 Enable new feature flag [Low memory mesh adapt option]
依不同設計,有機會減少refine mesh的最大記憶體使用量10~20%,但也可能沒有減少。視個案狀況效果不同。
4.2 [Auto Select Direct/Iterative] solver
過去SI建議用[Direct Solver],現在可用[Auto Select Direct/Iterative] solver,大部分案例上都可以看到加速效果。(2022R2就有這新的求解器選項)
0~70GHz準度需求的模擬手法
6.1 先解0~1MHz並設定 [Using Q3D to solve DC point]以取得正確DC RL
以此例來說DC R=8ohm才是較準確的值,並非5.8ohm
6.2 改以手動設定DC thickness for signal layer
-
對於IC level或Interposer...等um級(甚至是sub-um級)的題目,若要確保DC~Transion region的準度,使用HFSS solve inside是一種方法,但此法一旦頻寬進入AC region的準度就不行了,又這類題目進入AC region的頻點不是很好估算(refer to 8.2),從3G~40GHz都有可能,視導體厚度與寬度,與是向下參考地,還是往旁側參考地而定。
這就是為何我不會把solve inside當默認設定推薦的原因。
- 只有當欲抽取的頻寬範圍主要落在DC~Transition region(其範圍很寬),才考慮使用solve inside
- 如果欲抽取的頻寬範圍主要落在AC region(DC~Transition其範圍很窄),使用HFSS默認求解技術(SIBC)
- 當欲抽取的頻寬範圍落在DC~Transition與AC region各半,那就採用本文6.2所介紹的方法
問題與討論
8.1 um級的題目,solve inside解的DC RL一定比SIBC (effective DC thickness)解的DC RL大嗎?
Ans:這不一定,還跟走線往參考地所看到的場有關,也就是跟結構有關。
有些IC level/Interposer結構以solve inside解Transition region頻段比SIBC解的loss反而是較小。這就是為什麼這類型題目要做到0~70GHz都很準很不容易。
什麼樣的題型SIBC低頻解的偏大,什麼樣的題型SIBC低頻解的偏小? 有機會再整理一篇分享
8.2 本文範例的銅厚1um,進入AC region的頻點在39GHz以上,為何5.2的模擬結果顯示10GHz以上使用solve inside的S21準度就偏(差)了?
Ans:我們以Q3D Help內所定義:當肌膚深度=導體厚度1/3時,為進入AC region的頻點來估算
1um銅厚進入AC region的頻率是39G,而2um銅厚進入AC region的頻率是10G。而此例雖然訊號線銅厚1um,但從5.2中solve inside vs. SIBC解的S21開始分叉的頻點從10GHz來看,感覺進入AC region的頻點是10GHz?? 這怎麼理解呢?
這是有鑑別度的題目,就留給各位當課後挑戰題。
提示:當導體的截面是1um*2um矩形,在傳輸線傳遞能量的角度,考慮其進入肌膚效應的導體厚度d是要以1um還是2um計算?原因是?解答:(請將以下段落反白即可見解答)
當導體的截面是1um*2um矩形,在傳輸線傳遞能量的角度,其進入肌膚效應的導體厚度d,既不是1um,也不是2um,也不是(1+2)/2um,而是要根據該導體所處的結構環境下,往參考地的強耦合方向所決定。此例因為參考地(線)只在左右方向存在,故考慮發生肌膚效應的肌膚深度方向以平面方向(左右)的2um導體厚度為考慮 。
5.1 設定[Using Q3D to solve DC point] ... not work
試著把3DL掃頻設定內的[Use Q3D to solve DC point]勾選起來,比較看看極低頻結果有何不同?
發現這類題目的DC RL需要由Q3D解才是比較準的做法,但麻煩的是,截至2023R1為止,HFSS遇到這類型題目時,往DC外插連接到Q3D解出的DC RL仍無法很順的接上(低頻連續性有問題,如上圖所示)。
在HFSS改善AC to DC的演算法前,需要其他設定方法 ...
5.2 設定[Solve Inside] for Signal Net (only signal nets)
不設 [Using Q3D to solve DC point],改以選定關鍵的訊號線(層)做solve inside。
GND net則不用設solve inside,以在DC~100M低頻準度和整個題目的求解效率上取得平衡。
上圖是以選擇整個訊號層做solve inside (by layer)。也可以選定需要的signal net,設[ show (hide all others)]然後選定"走線"物件後,再按右鍵選[ HFSS 3D Layout properties] \ [Add Modeling] \ 在[Modeling Properity]內選[solve inside]。如果選定設solver inside的物件含via導致fail,那把model type設[IC]在2023R2即可解。
如果整個訊號傳輸通道的loss,via/TSV貢獻的佔很大部份,又所關心的模擬頻段沒有進到AC region,那via/TSV也需要做solve inside。
這樣雖然解決了0~100MHz的DC RL準度問題,但10GHz以上的準度卻偏掉了,這是因為solve inside不適合解超過Transition region,進入AC region的頻段。
在DC~Transition region,solve inside解的值較worse(loss較大),但這值才是較準的。AC region,solve inside解的值還是較worse(loss較大),但此時這值是錯的,反而要以HFSS默認的SIBC技術解才是對的。
針對um級的細長訊號線結構,如果想得到0~70GHz準度的模擬設定,有一個兩全其美的workaround方法嗎?
有的 ... 真的有! 讓我們繼續看下去 ...
不設 [Using Q3D to solve DC point],不設定solve inside,改以手動調整訊號線的DC thickness以符合正確DC RL。
這方法雖然稱不上"高大上",卻是目前解um級(甚至是sub-um)沒有好的參考面結構,最能確保0~70GHz準度的。不久的未來,HFSS會進化AC to DC的演算法,以更厲害地來處理這類問題,敬請期待。
[1] 為何需要3D IC? (上)
[2] 3D IC有其他好處嗎? (下)
.....從3D IC/TSV 的不同名詞看3D IC 技術 (下)